magnifier: gtk_snapshot_finish may return NULL
authorTimm Bäder <mail@baedert.org>
Wed, 10 Jan 2018 13:41:29 +0000 (14:41 +0100)
committerTimm Bäder <mail@baedert.org>
Wed, 10 Jan 2018 15:36:59 +0000 (16:36 +0100)
gtk/gtkmagnifier.c

index 90f4bccd4410c348372a8267e352d3b82acc0445..7d09b10a98cc37b63ba22950ca70da5dd737520f 100644 (file)
@@ -124,12 +124,15 @@ gtk_magnifier_snapshot (GtkWidget   *widget,
   gtk_widget_snapshot (priv->inspected, &inspected_snapshot);
   inspected_node = gtk_snapshot_finish (&inspected_snapshot);
 
-  graphene_matrix_init_identity (&transform);
-  graphene_matrix_scale (&transform, priv->magnification, priv->magnification, 1);
+  if (inspected_node != NULL)
+    {
+      graphene_matrix_init_identity (&transform);
+      graphene_matrix_scale (&transform, priv->magnification, priv->magnification, 1);
 
-  gtk_snapshot_push_transform (snapshot, &transform, "Magnifier transform");
-  gtk_snapshot_append_node (snapshot, inspected_node);
-  gtk_snapshot_pop (snapshot);
+      gtk_snapshot_push_transform (snapshot, &transform, "Magnifier transform");
+      gtk_snapshot_append_node (snapshot, inspected_node);
+      gtk_snapshot_pop (snapshot);
+    }
 
 
   g_signal_handler_unblock (priv->inspected, priv->draw_handler);